package com.kingdee.eas.scm.sm.pur.app;

import com.kingdee.bos.BOSException;
//import com.kingdee.bos.metadata.*;
import com.kingdee.bos.framework.*;
import com.kingdee.bos.util.*;
import com.kingdee.bos.Context;

import java.lang.String;
import com.kingdee.bos.metadata.entity.EntityViewInfo;
import com.kingdee.eas.common.EASBizException;
import com.kingdee.bos.dao.IObjectPK;
import com.kingdee.eas.scm.common.app.SDSMBillEntryBaseController;
import com.kingdee.bos.metadata.entity.SelectorItemCollection;
import com.kingdee.eas.framework.CoreBaseCollection;
import com.kingdee.bos.metadata.entity.SorterItemCollection;
import com.kingdee.bos.util.*;
import com.kingdee.bos.metadata.entity.FilterInfo;
import com.kingdee.bos.dao.IObjectValue;
import com.kingdee.bos.BOSException;
import com.kingdee.bos.Context;
import com.kingdee.eas.framework.CoreBaseInfo;
import com.kingdee.bos.framework.*;
import com.kingdee.eas.scm.sm.pur.PurContractEntryInfo;
import com.kingdee.eas.scm.sm.pur.PurContractEntryCollection;

import java.rmi.RemoteException;
import com.kingdee.bos.framework.ejb.BizController;

public interface PurContractEntryController extends SDSMBillEntryBaseController
{
    public boolean exists(Context ctx, IObjectPK pk) throws BOSException, EASBizException, RemoteException;
    public boolean exists(Context ctx, FilterInfo filter) throws BOSException, EASBizException, RemoteException;
    public boolean exists(Context ctx, String oql) throws BOSException, EASBizException, RemoteException;
    public PurContractEntryInfo getPurContractEntryInfo(Context ctx, IObjectPK pk) throws BOSException, EASBizException, RemoteException;
    public PurContractEntryInfo getPurContractEntryInfo(Context ctx, IObjectPK pk, SelectorItemCollection selector) throws BOSException, EASBizException, RemoteException;
    public PurContractEntryInfo getPurContractEntryInfo(Context ctx, String oql) throws BOSException, EASBizException, RemoteException;
    public IObjectPK addnew(Context ctx, PurContractEntryInfo model) throws BOSException, EASBizException, RemoteException;
    public void addnew(Context ctx, IObjectPK pk, PurContractEntryInfo model) throws BOSException, EASBizException, RemoteException;
    public void update(Context ctx, IObjectPK pk, PurContractEntryInfo model) throws BOSException, EASBizException, RemoteException;
    public void updatePartial(Context ctx, PurContractEntryInfo model, SelectorItemCollection selector) throws BOSException, EASBizException, RemoteException;
    public void updateBigObject(Context ctx, IObjectPK pk, PurContractEntryInfo model) throws BOSException, RemoteException;
    public void delete(Context ctx, IObjectPK pk) throws BOSException, EASBizException, RemoteException;
    public IObjectPK[] getPKList(Context ctx) throws BOSException, EASBizException, RemoteException;
    public IObjectPK[] getPKList(Context ctx, String oql) throws BOSException, EASBizException, RemoteException;
    public IObjectPK[] getPKList(Context ctx, FilterInfo filter, SorterItemCollection sorter) throws BOSException, EASBizException, RemoteException;
    public PurContractEntryCollection getPurContractEntryCollection(Context ctx) throws BOSException, RemoteException;
    public PurContractEntryCollection getPurContractEntryCollection(Context ctx, EntityViewInfo view) throws BOSException, RemoteException;
    public PurContractEntryCollection getPurContractEntryCollection(Context ctx, String oql) throws BOSException, RemoteException;
    public IObjectPK[] delete(Context ctx, FilterInfo filter) throws BOSException, EASBizException, RemoteException;
    public IObjectPK[] delete(Context ctx, String oql) throws BOSException, EASBizException, RemoteException;
    public void delete(Context ctx, IObjectPK[] arrayPK) throws BOSException, EASBizException, RemoteException;
    public void canFreezed(Context ctx, IObjectPK[] pks) throws BOSException, EASBizException, RemoteException;
    public void freezed(Context ctx, IObjectPK[] pks, IObjectValue[] reasonCode) throws BOSException, EASBizException, RemoteException;
    public void freezed(Context ctx, IObjectPK[] pks, String[] reasonCode) throws BOSException, EASBizException, RemoteException;
    public void freezed(Context ctx, IObjectPK pk, String reason) throws BOSException, EASBizException, RemoteException;
    public void freezed(Context ctx, IObjectPK pk, IObjectValue reasonCode) throws BOSException, EASBizException, RemoteException;
    public void unFreezed(Context ctx, IObjectPK[] pks) throws BOSException, EASBizException, RemoteException;
    public void unFreezed(Context ctx, IObjectPK pk) throws BOSException, EASBizException, RemoteException;
    public void handClose(Context ctx, IObjectPK[] pks, IObjectValue[] reasonCodes) throws BOSException, EASBizException, RemoteException;
    public void handClose(Context ctx, IObjectPK[] pks, String[] reason) throws BOSException, EASBizException, RemoteException;
    public void handClose(Context ctx, IObjectPK pk, IObjectValue reasonCode) throws BOSException, EASBizException, RemoteException;
    public void handClose(Context ctx, IObjectPK pk, String reason) throws BOSException, EASBizException, RemoteException;
    public void canHandClose(Context ctx, IObjectPK[] pks) throws BOSException, EASBizException, RemoteException;
    public void handleUnclose(Context ctx, IObjectPK[] pks) throws BOSException, EASBizException, RemoteException;
    public void handleUnclose(Context ctx, IObjectPK pk) throws BOSException, EASBizException, RemoteException;
}